package collection;

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;

/**
 * 元素的toString方法和equals方法对集合操作的影响
 */
public class CollectionDemo2 {
    public static void main(String[] args) {
        Collection c = new ArrayList();
//        Collection c = new HashSet();
        c.add(new Point(1,2));
        c.add(new Point(3,4));
        c.add(new Point(5,6));
        c.add(new Point(7,8));
        c.add(new Point(9,0));
        /*
            集合重写了toString方法，返回的字符串格式:
            [元素1.toString(), 元素2.toString(), 元素3.toString(), ...]
         */
        System.out.println(c);
        /*
            对于Set集合而言，不可以放重复元素，而是否重复取决于元素的equals
            方法。
         */
        c.add(new Point(1,2));
        System.out.println(c);

        Point p = new Point(1,2);
        /*
            contains:包含
            boolean contains(Object o)
            判断集合中是否包含指定的元素。
            判断标准是看集合中是否有元素与该元素equals比较为true
         */
        boolean contains = c.contains(p);
        System.out.println("是否包含:"+contains);
        /*
            remove:删除
            boolean remove(Object obj)
            从当前集合中删除给定元素，成功删除则返回true
            像List集合这样可以存放重复元素的集合，那么remove仅删除靠前的
            第一个与给定元素equals比较为true的元素
         */
        c.remove(p);
        System.out.println(c);

    }
}





